package com.todo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.todo.dto.LoginFormDTO;
import com.todo.dto.Result;
import com.todo.dto.UpdatePasswordDTO;
import com.todo.dto.UserDTO;
import com.todo.entity.User;

import javax.servlet.http.HttpSession;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author carol
 * @since 2023-09-20
 */
public interface IUserService extends IService<User> {

    /**
     * 发送验证码
     * @param phone
     * @param session
     * @return
     */
    Result sendCode(String phone, HttpSession session);

    /**
     * 登录
     * @param loginForm
     * @return
     */
    Result login(LoginFormDTO loginForm);

    /**
     * 设置/修改密码
     * @param user
     * @return
     */
    Result savePassword(User user);

    /**
     * 通过用户id查询用户信息
     * @param uid
     * @return
     */
    UserDTO getMyInfo(String uid);

    /**
     * 修改密码
     * @param updatePasswordDTO
     * @return
     */
    Result updatePassword(UpdatePasswordDTO updatePasswordDTO);
}
